package cn.xiuxius.askbox.service;

import cn.xiuxius.askbox.pojo.dto.add.AnswerAddDTO;
import cn.xiuxius.askbox.pojo.dto.query.AnswerQueryDTO;
import cn.xiuxius.askbox.pojo.dto.update.AnswerUpdateDTO;
import cn.xiuxius.askbox.pojo.dto.update.AskUpdateStateDTO;
import cn.xiuxius.askbox.pojo.entity.AnswerEntity;
import cn.xiuxius.askbox.pojo.result.PageResult;
import cn.xiuxius.askbox.pojo.vo.AnswerVO;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author xiaoxiu
 * @since 2024-07-20
 */
public interface IAnswerService extends IService<AnswerEntity> {

    PageResult getAnswersByPage(AnswerQueryDTO dto);

    AnswerVO getAnswerByAnswerUuid(AnswerQueryDTO dto);

    void updateAnswerByAnswerUuid(AnswerUpdateDTO dto);

    void updateStateAnswerByAskUuid(AskUpdateStateDTO dto);

    void submitAnswer(AnswerAddDTO dto);

    AnswerVO getAnswerByAskUuid(AnswerQueryDTO dto);
}
